/**
 * @author 20111006 by hzx
 * @class NotifyPhonePanel
 * @extends Ext.grid.GridPanel
 * @description 审核通知号码列表
 */
NotifyPhonePanel = Ext.extend(Ext.grid.GridPanel, {

			myid : "my_id",
			addWin : null, // 参数,是AddUserRoleWindow的引用
//			editWin : null, // 参数,是EditUserRoleWindow的引用
			delWin : null, // 参数,是EditUserRoleWindow的引用

			/**
			 * 构造方法
			 */
			constructor : function(_cfg) {

				if (_cfg == null) {
					_cfg = {};
				}

				Ext.apply(this, _cfg);
				// 实例化AddUserRoleWindow并将引用附加给当前属性addWin
				this.addWin = new AddNotifyPhoneWindow();
				// 实例化EditUserRoleWindow并将引用附加给当前属性editWin
//				this.editWin = new EditUserRoleWindow();

				// 数据存贮器
				this["store"] = new Ext.data.JsonStore({
							url : "notifyPhone.do?operator=showAllNotifyPhoneByPage",
							totalProperty : 'totalCount',
							root : 'rows',
							fields : ["id", "userName", "phone", "remark","createDate"]
						});

				/**
				 * 拷贝父类的构造方法
				 */
				NotifyPhonePanel.superclass.constructor.call(this, {
							id : this.myid,
//							title:"审核通知号码列表",
							title:Ext.getCmp('MainTab').getActiveTab().title,
							border:false,
							stripeRows:true, //交替行效果
							iconCls:"houfei-treeNodeLeafIcon",
							viewConfig : {
								autoFill : true, //自动填充
								forceFit : true
							},
							colModel : new Ext.grid.ColumnModel([
									// 复选框列
									new Ext.grid.CheckboxSelectionModel({
												// 头
												header : ""
											}), {
										// 指定表格的列的定义
										header : '编号',// 表头
										sortable: true,  //允许排序
										dataIndex : "id",
										hidden : true
									}, {
										header : '姓名',// 表头
										sortable: true,  //允许排序
										dataIndex : "userName"
									}, {
										header : '手机号码',// 表头
										sortable: true,  //允许排序
										dataIndex : "phone"
									}, {
										header : '备注',// 表头
										sortable: true,  //允许排序
										dataIndex : "remark"
									}, {
										header : '创建时间',// 表头
										sortable: true,  //允许排序
										dataIndex : "createDate"
									}]),
							loadMask : {
								msg : "正在加载数据,请稍后..."
							},
							// 行选择模式
							selModel : new Ext.grid.RowSelectionModel({
										// 单行选择模式
										singleSelect : true
									}),
							tbar : [{
								text : "新建",
								handler : this.onAddNotifyPhone, // 添加角色事件
								iconCls : "houfei-addicon", // 按钮图片样式
								tooltip : "新增手机审核通知号码", // 提示信息
								scope : this
									// 范围
								}, "-", {
								text : "删除",
								iconCls : "houfei-closeCurrentTab",
								handler : this.onRemoveNotifyPhone, // 编辑角色事件
								tooltip : "删除选中的手机审核通知号码",
								scope : this
							}, "-", {
								text : "刷新",
								iconCls : "houfei-refreshIcon",
								handler : this.onRefresh, // 刷新事件
								tooltip : "刷新审核通知号码信息",
								scope : this
							}],
							bbar : new Ext.PagingToolbar({
								store : this["store"], // 数据存储器
								pageSize : 20, // 页大小
								displayMsg:"共<font color=\"green\"> {2} </font>条记录,当前页记录索引<font color=\"green\"> {0} - {1}</font>&nbsp;&nbsp;&nbsp;",
								displayInfo:true
								})
						});
				// 数据加载
				this.getStore().load({
							params : { // 参数
								start : 0, // 索引
								limit : 20
								// 页大小
							}
						});
			},

			/**
			 * 表格数据刷新
			 */
			onRefresh : function() {
				this.getStore().reload();
			},

			/**
			 * 添加审核通知号码手机事件
			 */
			onAddNotifyPhone : function() {
				this.addWin.form.reset();
				this.addWin.show();
			},

			/**
			 * 编辑审核通知号码手机事件
			 */
//			onEditNotifyPhone : function() {
//				var _sm = this.getSelectionModel();
//				// 当用户选择了一条记录的时候将编辑窗口显示出来
//				if (_sm.getCount() > 0) {
//					// 获取当前用户选择的记录
//					var _r = _sm.getSelected();
//					// 创建一个Record
//					var _rc = new Ext.data.Record({
//								"userRole.urName" : _r.get("urName"),
//								"userRole.urMemo" : _r.get("urMemo")
//							});
//					// 将窗体显示出来
//					this.editWin.show();
//					// 加载数据
//					this.editWin.form.setFormValues(_rc);
//					this.editWin.urId = _r.get("urId");
//
//				} else {
//					Ext.Msg.show({
//								title : "系统提示",
//								msg : "请您选择一条您要修改的信息",
//								buttons : Ext.Msg.OK,
//								icon : Ext.Msg.INFO
//							});
//				}
//			},
			
			/**
			 * 删除审核通知号码手机事件
			 */
			onRemoveNotifyPhone : function() {
				var _sm = this.getSelectionModel();
				// 当用户选择了一条记录的时候将编辑窗口显示出来
				if (_sm.getCount() > 0) {
					Ext.Msg.confirm("系统消息", "您确定要删除当前选中的审核通知号码吗?",
							this.onDeleteConfrimBtnClick, this);
				} else {
					Ext.Msg.show({
								title : "系统提示",
								msg : "请您选择一条您要删除的信息",
								buttons : Ext.Msg.OK,
								icon : Ext.Msg.INFO
							});
				}
			},
			onDeleteConfrimBtnClick : function(_btn) {
				if (_btn == "yes") {
					// 获取当前表格的选择模式
					var _sm = this.getSelectionModel();
					// 获取当前表格主键id
					var _id = _sm.getSelected().get("id");
					// 进行异步Ajax请求
					Ext.Ajax.request({
								url : "notifyPhone.do",
								method : "post",
								success : this.onSubmitSuccess,
								failure : this.onSubmitFailure,
								scope : this,
								params : {
									operator : "removeNotifyPhone",
									id : _id
								}
							});
					//this.onRefresh(); //刷新
				}
			},
			onSubmitFailure : function(_form, _action) {
				Ext.Msg.alert("系统消息", "删除失败");
//				Ext.Msg.show({
//								title : "系统提示",
//								msg : "请您选择一条您要删除的信息",
//								buttons : Ext.Msg.OK,
//								icon : Ext.Msg.INFO
//							});
				//Ext.Msg.alert("系统消息", _action.result["errorMsg"]);
				// if (_action.result.success == true) {
					// // 调用当前组建的父容器的onCloseWinClick()事件
					// this.ownerCt.onCloseWinClick();
					// /**
					 // * _urgp 是 hrmfactory.userrole.userRole.jsp
					 // * 中UserRoleGridPanel类的实例
					 // */
					// _urgp.getStore().reload();
				// }
			},
			onSubmitSuccess : function(_form, _action) {
				Ext.Msg.alert("系统消息", "删除成功");
			}
		});